import request from '@/config/axios'

// 医生信息 VO
export interface DoctorVO {
  id: number // ID
  name: string // 姓名
  nickname: string // 昵称
  gender: string // 性别
  birthday: string // 出生年月
  headImageUrl: string // 头像地址
  phone: string // 电话
  jobTitle: string // 职称
  specialist: number // 是否专家
  workRange: string // 工作时段
  tags: string // 擅长病种
  address: string // 坐诊地址
  orgName: string // 机构名称
  departmentId: number // 科室ID
  departmentName: string // 科室名称
  hisDeptCode: string // his科室编码
  hisDeptName: string // his科室名称
  hisDoctorCode: string // his医生编码
  hisDoctorName: string // his医生名称
  linkUrl: string // 链接地址
  tips: string // 提示
  notice: string // 通知
  description: string // 描述
  content: string // 内容
  contentFormat: string // html的content
  remark: string // 备注
  pictures: string // 图集
  files: string // 附件
  views: number // 阅读次数
  topping: number // 是否置顶
  recommend: number // 推荐状态
  publishTime: Date // 发布时间
  publish: number // 发布状态
  sort: number // 顺序
  status: number // 状态
}

// 医生信息 API
export const DoctorApi = {
  // 查询医生信息分页
  getDoctorPage: async (params: any) => {
    return await request.get({ url: `/cms/doctor/page`, params })
  },

  // 查询医生信息详情
  getDoctor: async (id: number) => {
    return await request.get({ url: `/cms/doctor/get?id=` + id })
  },

  // 新增医生信息
  createDoctor: async (data: DoctorVO) => {
    return await request.post({ url: `/cms/doctor/create`, data })
  },

  // 修改医生信息
  updateDoctor: async (data: DoctorVO) => {
    return await request.put({ url: `/cms/doctor/update`, data })
  },

  // 删除医生信息
  deleteDoctor: async (id: number) => {
    return await request.delete({ url: `/cms/doctor/delete?id=` + id })
  },

  // 导出医生信息 Excel
  exportDoctor: async (params) => {
    return await request.download({ url: `/cms/doctor/export-excel`, params })
  }
}